﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace AgvController
{
    class Agv
    {
        #region 私有成员变量
        private string name;
        private string id;
        private int agvStatus;
        private int runningMode;
        private float currentSpeed;
        private float currentTemperature;
        private int currentPathID;
        private int targetPathID;
        #endregion

        #region 属性
        /// <summary>
        /// 名字
        /// </summary>
        public string Name { get { return name; } }
        /// <summary>
        /// 设备编号
        /// </summary>
        public string ID { get { return id; } }
        /// <summary>
        /// agv状态
        /// </summary>
        public int AgvStatus { get { return agvStatus; } }
        /// <summary>
        /// 运行模式
        /// </summary>
        public int RunningMode { get { return runningMode; } }
        /// <summary>
        /// 当前速度
        /// </summary>
        public float CurrentSpeed { get { return currentSpeed; } }
        /// <summary>
        /// 最大速度
        /// </summary>
        public float MaxSpeed { get; set; }
        /// <summary>
        /// 当前温度
        /// </summary>
        public float CurrentTemperature { get { return currentTemperature; } }
        /// <summary>
        /// 当前路径ID
        /// </summary>
        public int CurrentPathID { get { return currentPathID; } }
        /// <summary>
        /// 目标路径ID
        /// </summary>
        public int TargetPathID
        {
            get { return targetPathID; }
            set { targetPathID = value; }
        }
        /// <summary>
        /// 路径列表
        /// </summary>
        public List<int[]> PathList { get; set; }

        #endregion

        #region 构造函数
        public Agv(string id)
        {
            this.id = id;
        }
        #endregion


    }
}
